home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / programs_-_include / LINUX / STAT.H < prev    next >
C/C++ Source or Header  |  1999-09-17  |  1KB  |  58 lines

  1. #ifndef _LINUX_STAT_H
  2. #define _LINUX_STAT_H
  3.  
  4. #ifdef __KERNEL__
  5.  
  6. #include <asm/stat.h>
  7.  
  8. #endif
  9.  
  10. #if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
  11.  
  12. #define S_IFMT  00170000
  13. #define S_IFSOCK 0140000
  14. #define S_IFLNK     0120000
  15. #define S_IFREG  0100000
  16. #define S_IFBLK  0060000
  17. #define S_IFDIR  0040000
  18. #define S_IFCHR  0020000
  19. #define S_IFIFO  0010000
  20. #define S_ISUID  0004000
  21. #define S_ISGID  0002000
  22. #define S_ISVTX  0001000
  23.  
  24. #define S_ISLNK(m)    (((m) & S_IFMT) == S_IFLNK)
  25. #define S_ISREG(m)    (((m) & S_IFMT) == S_IFREG)
  26. #define S_ISDIR(m)    (((m) & S_IFMT) == S_IFDIR)
  27. #define S_ISCHR(m)    (((m) & S_IFMT) == S_IFCHR)
  28. #define S_ISBLK(m)    (((m) & S_IFMT) == S_IFBLK)
  29. #define S_ISFIFO(m)    (((m) & S_IFMT) == S_IFIFO)
  30. #define S_ISSOCK(m)    (((m) & S_IFMT) == S_IFSOCK)
  31.  
  32. #define S_IRWXU 00700
  33. #define S_IRUSR 00400
  34. #define S_IWUSR 00200
  35. #define S_IXUSR 00100
  36.  
  37. #define S_IRWXG 00070
  38. #define S_IRGRP 00040
  39. #define S_IWGRP 00020
  40. #define S_IXGRP 00010
  41.  
  42. #define S_IRWXO 00007
  43. #define S_IROTH 00004
  44. #define S_IWOTH 00002
  45. #define S_IXOTH 00001
  46.  
  47. #endif
  48.  
  49. #ifdef __KERNEL__
  50. #define S_IRWXUGO    (S_IRWXU|S_IRWXG|S_IRWXO)
  51. #define S_IALLUGO    (S_ISUID|S_ISGID|S_ISVTX|S_IRWXUGO)
  52. #define S_IRUGO        (S_IRUSR|S_IRGRP|S_IROTH)
  53. #define S_IWUGO        (S_IWUSR|S_IWGRP|S_IWOTH)
  54. #define S_IXUGO        (S_IXUSR|S_IXGRP|S_IXOTH)
  55. #endif
  56.  
  57. #endif
  58.